1. Field of the Invention
The present invention relates to the field of graphical user interfaces and, more particularly, to providing suitable menu position indicators that predict menu placement of menus having variable positions depending on an availability of display space.
2. Description of the Related Art
Menus are an important and heavily used part of graphical user interfaces. Menu and submenu behavior frequently follows conventions based on their menu type. In general, menus have an established origin point and are positioned within an interface relative to this point. For fixed menus, the origin point is usually defined by a fixed GUI element, such as a menu bar. For context menus, the origin point is usually defined by a position of a pointer when the context menu was initiated. Most, but not all, menus use the origin point as the upper left point of a menu position. Some menus, for example, that originate from a bottom docked bar use the origin point as the bottom left position of the menu. Other menus that originate from a right docked bar use the origin point as the top right position of the menu.
Menus can include certain actions associated with additional levels of options, each level being associated with a submenu. A menu typically denotes submenu availability by displaying an indicator in the form of a small black arrow, or less commonly, an ellipsis. Generally, fixed menus, context menus, and submenus behave similarly and in a manner consistent with user expectations. However, in many instances, when screen space is not available for menus to behave “normally”, unanticipated behavior can result. For example, menus that appear to the right of an origin point when space is available often expand to the left when there is not sufficient screen space to the right. Not only is a user sometimes surprised by where menus appear, submenu indicators often add to this confusion by indicating default positions, which are different from an actual position of a presented submenu.